Generally speaking, parallel processing helps ensure that processing requests that are received by a computing system are handled in as short a time period as possible when there are multiple servers or threads available. However, not all requests can be executed in parallel. There are times when data or resources have to be locked until a particular request has completed. During the execution of these locking requests that cannot be executed in parallel with other requests, any other or subsequent requests that are received must wait to execute until the execution of the locking request has completed. The longer the resources are locked by a locking request, the longer the wait times increase and the more system performance degrades.
In the drawings, like reference numbers generally indicate identical or similar elements. Additionally, generally, the left-most digit(s) of a reference number identifies the drawing in which the reference number first appears.